package com.youlu.campus.entity;

import com.youlu.campus.base.base.EntityBase;
import lombok.Getter;
import lombok.Setter;
import org.springframework.data.annotation.Transient;
import org.springframework.data.mongodb.core.mapping.Document;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

@Getter
@Setter
@Document(collection = "activity_qa_info")
public class ActivityQaInfo extends EntityBase {
    private String activityId;
    /**
     * 活动名字
     */
    private String activityName;
    /**
     * 封面
     */
    private String imageUr;
    /**
     * 媒体类型
     * rich_text:富文本
     * video:视频
     * audio:音频
     */
    private String mediaType = "rich_text";
    /**
     * 媒体地址,图片或者音频
     */
    private String mediaUrl;
    /**
     * 媒体描述
     */
    private String mediaDesc;
    private String name;
    private String desc;
    /**
     * 描述,富文本
     */
    private String detail;
    /**
     * 作者
     */
    private String optUser;
    /**
     * 总分数
     */
    private Integer score;
    /**
     * 是否发布,0:编辑中,1:审核中,2:待发布
     */
    private Integer status = 0;
    /**
     * 优先级
     */
    private Integer priority;
    /**
     * 通过分数
     */
    private Double passQaScore = 60.0D;
    /**
     * 竞赛的名字:校赛、省赛、国赛
     */
    private String contestName;
    /**
     * 总答题次数
     */
    private Integer totalQaNum = 3;
    /**
     * 是否限时
     */
    private Boolean limitTimed;
    /**
     * 限制时间,单位:秒
     */
    private Integer limitTime;
    /**
     * 题库序号
     */
    protected Integer no;
    /**
     * 获得证书名字
     */
    @Transient
    protected String caName;
    /**
     * 历史最高分
     */
    @Transient
    protected Double maxScore;
    /**
     * 剩余答题次数
     */
    @Transient
    protected Integer retryQaNum;
    /**
     * 答题可累加,在答题次数限制内可以继续答,算最高分
     */
    private Boolean qaAccumulation = Boolean.TRUE;
    /**
     * 下一个答题的名字
     */
    private String nextQaName;
    /**
     * 是否有多级答题
     */
    @Transient
    private Boolean hasMultiQa = Boolean.FALSE;
    /**
     * 按钮状态
     */
    private Boolean buttonStatus = Boolean.TRUE;
    /**
     * 是否随机答题
     * true 随机
     * false 不随机
     */
    private Boolean randomQa = Boolean.FALSE;

    /**
     * 随机单选数量
     */
    private Integer randomRadioQaCount = 0;

    /**
     * 随机多选数量
     */
    private Integer randomMultiQaCount = 0;
    /**
     * 是否系统生成编号
     */
    private Boolean qaSystemNumber = Boolean.FALSE;

    /**
     * 每道题-限制秒数
     */
    private Integer qaLimitTime = 10;

    /**
     * 答题未解锁图片
     */
    private String qaLockImageUrl;

    /**
     * 答题通过锁图片
     */
    private String qaUnLockImageUrl;

    @Transient
    private Date startTime;
    @Transient
    private Date endTime;

    /**
     * 活动类型
     */
    @Transient
    private String type;
    /**
     * 是否报名前活动证书
     */
    private Boolean signUpBeforeCa = Boolean.FALSE;
    /**
     * 答题渠道
     * inner:内部答题
     * outer:外部答题
     */
    private String qaChannel = "inner";
    /**
     * 外部答题说明
     */
    private String outerQaLinker;
    /**
     * 浏览量
     */
    @Transient
    private Integer browseNum;
    /**
     * 点赞量
     */
    @Transient
    private Integer dianZanNum;


}
